﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace AmazonMODEL
{
    #region Shoes
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "", IsNullable = false)]
    public partial class Shoes
    {

        private ShoesClothingType clothingTypeField;

        private ShoesVariationData variationDataField;

        private ShoesClassificationData classificationDataField;

        /// <remarks/>
        public ShoesClothingType ClothingType
        {
            get
            {
                return this.clothingTypeField;
            }
            set
            {
                this.clothingTypeField = value;
            }
        }

        /// <remarks/>
        public ShoesVariationData VariationData
        {
            get
            {
                return this.variationDataField;
            }
            set
            {
                this.variationDataField = value;
            }
        }

        /// <remarks/>
        public ShoesClassificationData ClassificationData
        {
            get
            {
                return this.classificationDataField;
            }
            set
            {
                this.classificationDataField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
    public enum ShoesClothingType
    {

        /// <remarks/>
        Accessory,

        /// <remarks/>
        Bag,

        /// <remarks/>
        Shoes,

        /// <remarks/>
        ShoeAccessory,

        /// <remarks/>
        Handbag,

        /// <remarks/>
        Eyewear,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
    public partial class ShoesVariationData
    {

        private ShoesVariationDataParentage parentageField;

        private bool parentageFieldSpecified;

        private string sizeField;

        private string colorField;

        private ShoesVariationDataVariationTheme variationThemeField;

        private bool variationThemeFieldSpecified;

        /// <remarks/>
        public ShoesVariationDataParentage Parentage
        {
            get
            {
                return this.parentageField;
            }
            set
            {
                this.parentageField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool ParentageSpecified
        {
            get
            {
                return this.parentageFieldSpecified;
            }
            set
            {
                this.parentageFieldSpecified = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string Size
        {
            get
            {
                return this.sizeField;
            }
            set
            {
                this.sizeField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string Color
        {
            get
            {
                return this.colorField;
            }
            set
            {
                this.colorField = value;
            }
        }

        /// <remarks/>
        public ShoesVariationDataVariationTheme VariationTheme
        {
            get
            {
                return this.variationThemeField;
            }
            set
            {
                this.variationThemeField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool VariationThemeSpecified
        {
            get
            {
                return this.variationThemeFieldSpecified;
            }
            set
            {
                this.variationThemeFieldSpecified = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
    public enum ShoesVariationDataParentage
    {

        /// <remarks/>
        parent,

        /// <remarks/>
        child,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
    public enum ShoesVariationDataVariationTheme
    {

        /// <remarks/>
        Size,

        /// <remarks/>
        Color,

        /// <remarks/>
        SizeColor,

        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("ColorName-MagnificationStrength")]
        ColorNameMagnificationStrength,

        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("ColorName-LensColor")]
        ColorNameLensColor,

        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("ColorName-LensWidth")]
        ColorNameLensWidth,

        /// <remarks/>
        Material,

        /// <remarks/>
        SizeStyle,

        /// <remarks/>
        StyleName,

        /// <remarks/>
        PatternName,

        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("Size-Material")]
        SizeMaterial,

        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("Size-PatternName")]
        SizePatternName,

        /// <remarks/>
        LensColor,

        /// <remarks/>
        LensColorShape,

        /// <remarks/>
        LensColorMaterial,

        /// <remarks/>
        ColorSize,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
    public partial class ShoesClassificationData
    {

        private LengthDimension baseLengthField;

        private string countryOfOriginField;

        private string contributorField;

        private string colorMapField;

        private string sizeMapField;

        private string archTypeField;

        private LengthDimension armLengthField;

        private string beltStyleField;

        private LengthDimension bootOpeningCircumferenceField;

        private LengthDimension bridgeWidthField;

        private string careInstructionsField;

        private string shoeClosureTypeField;

        private string countryProducedInField;

        private string cleatDescriptionField;

        private string cleatMaterialTypeField;

        private string departmentField;

        private string[] externalTestingCertificationField;

        private string fabricTypeField;

        private string importDesignationField;

        private string countryAsLabeledField;

        private string furDescriptionField;

        private string fabricWashField;

        private string fitToSizeDescriptionField;

        private string frameMaterialTypeField;

        private string harmonizedCodeField;

        private LengthDimension heelHeightField;

        private string heelTypeField;

        private string innerMaterialField;

        private bool isStainResistantField;

        private bool isStainResistantFieldSpecified;

        private bool isVeryHighValueField;

        private bool isVeryHighValueFieldSpecified;

        private bool isAdultProductField;

        private bool isAdultProductFieldSpecified;

        private string includedComponentsField;

        private string itemShapeField;

        private string lensColorField;

        private string lensColorMapField;

        private LengthDimension lensHeightField;

        private string lensMaterialTypeField;

        private string lensTypeField;

        private LengthDimension lensWidthField;

        private string liningDescriptionField;

        private string[] occasionAndLifestyleField;

        private string occasionTypeField;

        private OptionalMagnificationDimension magnificationStrengthField;

        private string materialCompositionField;

        private string[] materialTypeField;

        private string modelNumberField;

        private string modelNameField;

        private string modelYearField;

        private string numberOfPocketsField;

        private string outerMaterialTypeField;

        private string materialOpacityField;

        private string patternStyleField;

        private string[] performanceRatingField;

        private decimal platformHeightField;

        private bool platformHeightFieldSpecified;

        private string pocketDescriptionField;

        private string polarizationTypeField;

        private string seasonField;

        private StringLengthOptionalDimension shaftHeightField;

        private StringLengthOptionalDimension shaftWidthField;

        private StringLengthOptionalDimension shaftDiameterField;

        private LengthDimension shoulderStrapDropField;

        private string shoeHeightMapField;

        private string specialSizeTypeField;

        private string soleMaterialField;

        private string strapTypeField;

        private string[] specialFeaturesField;

        private string[] specificUsesField;

        private string characterField;

        private string toeShapeField;

        private string targetGenderField;

        private string warrantyTypeField;

        private string warrantyDescriptionField;

        private ClothingSizeDimension waistSizeField;

        private string waistStyleField;

        private string wheelTypeField;

        private ShoesClassificationDataWaterResistanceLevel waterResistanceLevelField;

        private bool waterResistanceLevelFieldSpecified;

        private string patternNameField;

        private string safetyWarningField;

        private string manufacturerWarrantyTypeField;

        private string mfrWarrantyDescriptionLaborField;

        private string mfrWarrantyDescriptionPartsField;

        private string sellerWarrantyDescriptionField;

        private string[] styleKeywordsField;

        private string styleNameField;

        private string teamNameField;

        private string toeStyleField;

        private string numberOfItemsField;

        private WeightDimension itemDisplayWeightField;

        private VolumeDimension itemDisplayVolumeField;

        private LengthDimension itemDisplayLengthField;

        private LengthDimension itemDisplayWidthField;

        private LengthDimension itemDisplayHeightField;

        private Battery batteryField;

        private BatteryCellTypeValues batteryCellCompositionField;

        private bool batteryCellCompositionFieldSpecified;

        private string batteryDescriptionField;

        private string batteryFormFactorField;

        private decimal lithiumBatteryWeightField;

        private bool lithiumBatteryWeightFieldSpecified;

        private string sportTypeField;

        private string shellTypeField;

        private string collectionNameField;

        private string insoleTypeField;

        private string leatherTypeField;

        private string pronationCorrectionField;

        private ShoeSafetyCodeIso20345Type shoeSafetyCodeIso20345Field;

        private bool shoeSafetyCodeIso20345FieldSpecified;

        private string shoeWidthField;

        private string surfaceRecommendationField;

        private VolumeDimension volumeCapacityNameField;

        private string numberOfWheelsField;

        private string insertMaterialField;

        private string shaftDiameterDerivedField;

        private decimal batteryWeightField;

        private bool batteryWeightFieldSpecified;

        private LengthDimension maximumCircumferenceField;

        private string opacityField;

        private string riseStyleField;

        /// <remarks/>
        public LengthDimension BaseLength
        {
            get
            {
                return this.baseLengthField;
            }
            set
            {
                this.baseLengthField = value;
            }
        }

        /// <remarks/>
        public string CountryOfOrigin
        {
            get
            {
                return this.countryOfOriginField;
            }
            set
            {
                this.countryOfOriginField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string Contributor
        {
            get
            {
                return this.contributorField;
            }
            set
            {
                this.contributorField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string ColorMap
        {
            get
            {
                return this.colorMapField;
            }
            set
            {
                this.colorMapField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string SizeMap
        {
            get
            {
                return this.sizeMapField;
            }
            set
            {
                this.sizeMapField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string ArchType
        {
            get
            {
                return this.archTypeField;
            }
            set
            {
                this.archTypeField = value;
            }
        }

        /// <remarks/>
        public LengthDimension ArmLength
        {
            get
            {
                return this.armLengthField;
            }
            set
            {
                this.armLengthField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string BeltStyle
        {
            get
            {
                return this.beltStyleField;
            }
            set
            {
                this.beltStyleField = value;
            }
        }

        /// <remarks/>
        public LengthDimension BootOpeningCircumference
        {
            get
            {
                return this.bootOpeningCircumferenceField;
            }
            set
            {
                this.bootOpeningCircumferenceField = value;
            }
        }

        /// <remarks/>
        public LengthDimension BridgeWidth
        {
            get
            {
                return this.bridgeWidthField;
            }
            set
            {
                this.bridgeWidthField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string CareInstructions
        {
            get
            {
                return this.careInstructionsField;
            }
            set
            {
                this.careInstructionsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string ShoeClosureType
        {
            get
            {
                return this.shoeClosureTypeField;
            }
            set
            {
                this.shoeClosureTypeField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string CountryProducedIn
        {
            get
            {
                return this.countryProducedInField;
            }
            set
            {
                this.countryProducedInField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string CleatDescription
        {
            get
            {
                return this.cleatDescriptionField;
            }
            set
            {
                this.cleatDescriptionField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string CleatMaterialType
        {
            get
            {
                return this.cleatMaterialTypeField;
            }
            set
            {
                this.cleatMaterialTypeField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string Department
        {
            get
            {
                return this.departmentField;
            }
            set
            {
                this.departmentField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("ExternalTestingCertification", DataType = "normalizedString")]
        public string[] ExternalTestingCertification
        {
            get
            {
                return this.externalTestingCertificationField;
            }
            set
            {
                this.externalTestingCertificationField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string FabricType
        {
            get
            {
                return this.fabricTypeField;
            }
            set
            {
                this.fabricTypeField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string ImportDesignation
        {
            get
            {
                return this.importDesignationField;
            }
            set
            {
                this.importDesignationField = value;
            }
        }

        /// <remarks/>
        public string CountryAsLabeled
        {
            get
            {
                return this.countryAsLabeledField;
            }
            set
            {
                this.countryAsLabeledField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string FurDescription
        {
            get
            {
                return this.furDescriptionField;
            }
            set
            {
                this.furDescriptionField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string FabricWash
        {
            get
            {
                return this.fabricWashField;
            }
            set
            {
                this.fabricWashField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string FitToSizeDescription
        {
            get
            {
                return this.fitToSizeDescriptionField;
            }
            set
            {
                this.fitToSizeDescriptionField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string FrameMaterialType
        {
            get
            {
                return this.frameMaterialTypeField;
            }
            set
            {
                this.frameMaterialTypeField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string HarmonizedCode
        {
            get
            {
                return this.harmonizedCodeField;
            }
            set
            {
                this.harmonizedCodeField = value;
            }
        }

        /// <remarks/>
        public LengthDimension HeelHeight
        {
            get
            {
                return this.heelHeightField;
            }
            set
            {
                this.heelHeightField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string HeelType
        {
            get
            {
                return this.heelTypeField;
            }
            set
            {
                this.heelTypeField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string InnerMaterial
        {
            get
            {
                return this.innerMaterialField;
            }
            set
            {
                this.innerMaterialField = value;
            }
        }

        /// <remarks/>
        public bool IsStainResistant
        {
            get
            {
                return this.isStainResistantField;
            }
            set
            {
                this.isStainResistantField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool IsStainResistantSpecified
        {
            get
            {
                return this.isStainResistantFieldSpecified;
            }
            set
            {
                this.isStainResistantFieldSpecified = value;
            }
        }

        /// <remarks/>
        public bool IsVeryHighValue
        {
            get
            {
                return this.isVeryHighValueField;
            }
            set
            {
                this.isVeryHighValueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool IsVeryHighValueSpecified
        {
            get
            {
                return this.isVeryHighValueFieldSpecified;
            }
            set
            {
                this.isVeryHighValueFieldSpecified = value;
            }
        }

        /// <remarks/>
        public bool IsAdultProduct
        {
            get
            {
                return this.isAdultProductField;
            }
            set
            {
                this.isAdultProductField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool IsAdultProductSpecified
        {
            get
            {
                return this.isAdultProductFieldSpecified;
            }
            set
            {
                this.isAdultProductFieldSpecified = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string IncludedComponents
        {
            get
            {
                return this.includedComponentsField;
            }
            set
            {
                this.includedComponentsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string ItemShape
        {
            get
            {
                return this.itemShapeField;
            }
            set
            {
                this.itemShapeField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string LensColor
        {
            get
            {
                return this.lensColorField;
            }
            set
            {
                this.lensColorField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string LensColorMap
        {
            get
            {
                return this.lensColorMapField;
            }
            set
            {
                this.lensColorMapField = value;
            }
        }

        /// <remarks/>
        public LengthDimension LensHeight
        {
            get
            {
                return this.lensHeightField;
            }
            set
            {
                this.lensHeightField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string LensMaterialType
        {
            get
            {
                return this.lensMaterialTypeField;
            }
            set
            {
                this.lensMaterialTypeField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string LensType
        {
            get
            {
                return this.lensTypeField;
            }
            set
            {
                this.lensTypeField = value;
            }
        }

        /// <remarks/>
        public LengthDimension LensWidth
        {
            get
            {
                return this.lensWidthField;
            }
            set
            {
                this.lensWidthField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string LiningDescription
        {
            get
            {
                return this.liningDescriptionField;
            }
            set
            {
                this.liningDescriptionField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("OccasionAndLifestyle", DataType = "normalizedString")]
        public string[] OccasionAndLifestyle
        {
            get
            {
                return this.occasionAndLifestyleField;
            }
            set
            {
                this.occasionAndLifestyleField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string OccasionType
        {
            get
            {
                return this.occasionTypeField;
            }
            set
            {
                this.occasionTypeField = value;
            }
        }

        /// <remarks/>
        public OptionalMagnificationDimension MagnificationStrength
        {
            get
            {
                return this.magnificationStrengthField;
            }
            set
            {
                this.magnificationStrengthField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string MaterialComposition
        {
            get
            {
                return this.materialCompositionField;
            }
            set
            {
                this.materialCompositionField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("MaterialType", DataType = "normalizedString")]
        public string[] MaterialType
        {
            get
            {
                return this.materialTypeField;
            }
            set
            {
                this.materialTypeField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string ModelNumber
        {
            get
            {
                return this.modelNumberField;
            }
            set
            {
                this.modelNumberField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string ModelName
        {
            get
            {
                return this.modelNameField;
            }
            set
            {
                this.modelNameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "positiveInteger")]
        public string ModelYear
        {
            get
            {
                return this.modelYearField;
            }
            set
            {
                this.modelYearField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "positiveInteger")]
        public string NumberOfPockets
        {
            get
            {
                return this.numberOfPocketsField;
            }
            set
            {
                this.numberOfPocketsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string OuterMaterialType
        {
            get
            {
                return this.outerMaterialTypeField;
            }
            set
            {
                this.outerMaterialTypeField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string MaterialOpacity
        {
            get
            {
                return this.materialOpacityField;
            }
            set
            {
                this.materialOpacityField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string PatternStyle
        {
            get
            {
                return this.patternStyleField;
            }
            set
            {
                this.patternStyleField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("PerformanceRating", DataType = "normalizedString")]
        public string[] PerformanceRating
        {
            get
            {
                return this.performanceRatingField;
            }
            set
            {
                this.performanceRatingField = value;
            }
        }

        /// <remarks/>
        public decimal PlatformHeight
        {
            get
            {
                return this.platformHeightField;
            }
            set
            {
                this.platformHeightField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool PlatformHeightSpecified
        {
            get
            {
                return this.platformHeightFieldSpecified;
            }
            set
            {
                this.platformHeightFieldSpecified = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string PocketDescription
        {
            get
            {
                return this.pocketDescriptionField;
            }
            set
            {
                this.pocketDescriptionField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string PolarizationType
        {
            get
            {
                return this.polarizationTypeField;
            }
            set
            {
                this.polarizationTypeField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string Season
        {
            get
            {
                return this.seasonField;
            }
            set
            {
                this.seasonField = value;
            }
        }

        /// <remarks/>
        public StringLengthOptionalDimension ShaftHeight
        {
            get
            {
                return this.shaftHeightField;
            }
            set
            {
                this.shaftHeightField = value;
            }
        }

        /// <remarks/>
        public StringLengthOptionalDimension ShaftWidth
        {
            get
            {
                return this.shaftWidthField;
            }
            set
            {
                this.shaftWidthField = value;
            }
        }

        /// <remarks/>
        public StringLengthOptionalDimension ShaftDiameter
        {
            get
            {
                return this.shaftDiameterField;
            }
            set
            {
                this.shaftDiameterField = value;
            }
        }

        /// <remarks/>
        public LengthDimension ShoulderStrapDrop
        {
            get
            {
                return this.shoulderStrapDropField;
            }
            set
            {
                this.shoulderStrapDropField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string ShoeHeightMap
        {
            get
            {
                return this.shoeHeightMapField;
            }
            set
            {
                this.shoeHeightMapField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string SpecialSizeType
        {
            get
            {
                return this.specialSizeTypeField;
            }
            set
            {
                this.specialSizeTypeField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string SoleMaterial
        {
            get
            {
                return this.soleMaterialField;
            }
            set
            {
                this.soleMaterialField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string StrapType
        {
            get
            {
                return this.strapTypeField;
            }
            set
            {
                this.strapTypeField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("SpecialFeatures", DataType = "normalizedString")]
        public string[] SpecialFeatures
        {
            get
            {
                return this.specialFeaturesField;
            }
            set
            {
                this.specialFeaturesField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("SpecificUses", DataType = "normalizedString")]
        public string[] SpecificUses
        {
            get
            {
                return this.specificUsesField;
            }
            set
            {
                this.specificUsesField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string Character
        {
            get
            {
                return this.characterField;
            }
            set
            {
                this.characterField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string ToeShape
        {
            get
            {
                return this.toeShapeField;
            }
            set
            {
                this.toeShapeField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string TargetGender
        {
            get
            {
                return this.targetGenderField;
            }
            set
            {
                this.targetGenderField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string WarrantyType
        {
            get
            {
                return this.warrantyTypeField;
            }
            set
            {
                this.warrantyTypeField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string WarrantyDescription
        {
            get
            {
                return this.warrantyDescriptionField;
            }
            set
            {
                this.warrantyDescriptionField = value;
            }
        }

        /// <remarks/>
        public ClothingSizeDimension WaistSize
        {
            get
            {
                return this.waistSizeField;
            }
            set
            {
                this.waistSizeField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string WaistStyle
        {
            get
            {
                return this.waistStyleField;
            }
            set
            {
                this.waistStyleField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string WheelType
        {
            get
            {
                return this.wheelTypeField;
            }
            set
            {
                this.wheelTypeField = value;
            }
        }

        /// <remarks/>
        public ShoesClassificationDataWaterResistanceLevel WaterResistanceLevel
        {
            get
            {
                return this.waterResistanceLevelField;
            }
            set
            {
                this.waterResistanceLevelField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool WaterResistanceLevelSpecified
        {
            get
            {
                return this.waterResistanceLevelFieldSpecified;
            }
            set
            {
                this.waterResistanceLevelFieldSpecified = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string PatternName
        {
            get
            {
                return this.patternNameField;
            }
            set
            {
                this.patternNameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string SafetyWarning
        {
            get
            {
                return this.safetyWarningField;
            }
            set
            {
                this.safetyWarningField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string ManufacturerWarrantyType
        {
            get
            {
                return this.manufacturerWarrantyTypeField;
            }
            set
            {
                this.manufacturerWarrantyTypeField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string MfrWarrantyDescriptionLabor
        {
            get
            {
                return this.mfrWarrantyDescriptionLaborField;
            }
            set
            {
                this.mfrWarrantyDescriptionLaborField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string MfrWarrantyDescriptionParts
        {
            get
            {
                return this.mfrWarrantyDescriptionPartsField;
            }
            set
            {
                this.mfrWarrantyDescriptionPartsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string SellerWarrantyDescription
        {
            get
            {
                return this.sellerWarrantyDescriptionField;
            }
            set
            {
                this.sellerWarrantyDescriptionField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("StyleKeywords", DataType = "normalizedString")]
        public string[] StyleKeywords
        {
            get
            {
                return this.styleKeywordsField;
            }
            set
            {
                this.styleKeywordsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string StyleName
        {
            get
            {
                return this.styleNameField;
            }
            set
            {
                this.styleNameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string TeamName
        {
            get
            {
                return this.teamNameField;
            }
            set
            {
                this.teamNameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string ToeStyle
        {
            get
            {
                return this.toeStyleField;
            }
            set
            {
                this.toeStyleField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "positiveInteger")]
        public string NumberOfItems
        {
            get
            {
                return this.numberOfItemsField;
            }
            set
            {
                this.numberOfItemsField = value;
            }
        }

        /// <remarks/>
        public WeightDimension ItemDisplayWeight
        {
            get
            {
                return this.itemDisplayWeightField;
            }
            set
            {
                this.itemDisplayWeightField = value;
            }
        }

        /// <remarks/>
        public VolumeDimension ItemDisplayVolume
        {
            get
            {
                return this.itemDisplayVolumeField;
            }
            set
            {
                this.itemDisplayVolumeField = value;
            }
        }

        /// <remarks/>
        public LengthDimension ItemDisplayLength
        {
            get
            {
                return this.itemDisplayLengthField;
            }
            set
            {
                this.itemDisplayLengthField = value;
            }
        }

        /// <remarks/>
        public LengthDimension ItemDisplayWidth
        {
            get
            {
                return this.itemDisplayWidthField;
            }
            set
            {
                this.itemDisplayWidthField = value;
            }
        }

        /// <remarks/>
        public LengthDimension ItemDisplayHeight
        {
            get
            {
                return this.itemDisplayHeightField;
            }
            set
            {
                this.itemDisplayHeightField = value;
            }
        }

        /// <remarks/>
        public Battery Battery
        {
            get
            {
                return this.batteryField;
            }
            set
            {
                this.batteryField = value;
            }
        }

        /// <remarks/>
        public BatteryCellTypeValues BatteryCellComposition
        {
            get
            {
                return this.batteryCellCompositionField;
            }
            set
            {
                this.batteryCellCompositionField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool BatteryCellCompositionSpecified
        {
            get
            {
                return this.batteryCellCompositionFieldSpecified;
            }
            set
            {
                this.batteryCellCompositionFieldSpecified = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string BatteryDescription
        {
            get
            {
                return this.batteryDescriptionField;
            }
            set
            {
                this.batteryDescriptionField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string BatteryFormFactor
        {
            get
            {
                return this.batteryFormFactorField;
            }
            set
            {
                this.batteryFormFactorField = value;
            }
        }

        /// <remarks/>
        public decimal LithiumBatteryWeight
        {
            get
            {
                return this.lithiumBatteryWeightField;
            }
            set
            {
                this.lithiumBatteryWeightField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool LithiumBatteryWeightSpecified
        {
            get
            {
                return this.lithiumBatteryWeightFieldSpecified;
            }
            set
            {
                this.lithiumBatteryWeightFieldSpecified = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string SportType
        {
            get
            {
                return this.sportTypeField;
            }
            set
            {
                this.sportTypeField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string ShellType
        {
            get
            {
                return this.shellTypeField;
            }
            set
            {
                this.shellTypeField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string CollectionName
        {
            get
            {
                return this.collectionNameField;
            }
            set
            {
                this.collectionNameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string InsoleType
        {
            get
            {
                return this.insoleTypeField;
            }
            set
            {
                this.insoleTypeField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string LeatherType
        {
            get
            {
                return this.leatherTypeField;
            }
            set
            {
                this.leatherTypeField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string PronationCorrection
        {
            get
            {
                return this.pronationCorrectionField;
            }
            set
            {
                this.pronationCorrectionField = value;
            }
        }

        /// <remarks/>
        public ShoeSafetyCodeIso20345Type ShoeSafetyCodeIso20345
        {
            get
            {
                return this.shoeSafetyCodeIso20345Field;
            }
            set
            {
                this.shoeSafetyCodeIso20345Field = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool ShoeSafetyCodeIso20345Specified
        {
            get
            {
                return this.shoeSafetyCodeIso20345FieldSpecified;
            }
            set
            {
                this.shoeSafetyCodeIso20345FieldSpecified = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string ShoeWidth
        {
            get
            {
                return this.shoeWidthField;
            }
            set
            {
                this.shoeWidthField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string SurfaceRecommendation
        {
            get
            {
                return this.surfaceRecommendationField;
            }
            set
            {
                this.surfaceRecommendationField = value;
            }
        }

        /// <remarks/>
        public VolumeDimension VolumeCapacityName
        {
            get
            {
                return this.volumeCapacityNameField;
            }
            set
            {
                this.volumeCapacityNameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "positiveInteger")]
        public string NumberOfWheels
        {
            get
            {
                return this.numberOfWheelsField;
            }
            set
            {
                this.numberOfWheelsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string InsertMaterial
        {
            get
            {
                return this.insertMaterialField;
            }
            set
            {
                this.insertMaterialField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "positiveInteger")]
        public string ShaftDiameterDerived
        {
            get
            {
                return this.shaftDiameterDerivedField;
            }
            set
            {
                this.shaftDiameterDerivedField = value;
            }
        }

        /// <remarks/>
        public decimal BatteryWeight
        {
            get
            {
                return this.batteryWeightField;
            }
            set
            {
                this.batteryWeightField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool BatteryWeightSpecified
        {
            get
            {
                return this.batteryWeightFieldSpecified;
            }
            set
            {
                this.batteryWeightFieldSpecified = value;
            }
        }

        /// <remarks/>
        public LengthDimension MaximumCircumference
        {
            get
            {
                return this.maximumCircumferenceField;
            }
            set
            {
                this.maximumCircumferenceField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string Opacity
        {
            get
            {
                return this.opacityField;
            }
            set
            {
                this.opacityField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "normalizedString")]
        public string RiseStyle
        {
            get
            {
                return this.riseStyleField;
            }
            set
            {
                this.riseStyleField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
    public enum ShoesClassificationDataWaterResistanceLevel
    {

        /// <remarks/>
        waterproof,

        /// <remarks/>
        not_water_resistant,

        /// <remarks/>
        water_resistant,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    public enum ShoeSafetyCodeIso20345Type
    {

        /// <remarks/>
        sb,

        /// <remarks/>
        s1,

        /// <remarks/>
        s2,

        /// <remarks/>
        s3,

        /// <remarks/>
        hro,

        /// <remarks/>
        p,

        /// <remarks/>
        e,

        /// <remarks/>
        wru,

        /// <remarks/>
        o,

        /// <remarks/>
        a,

        /// <remarks/>
        ci,

        /// <remarks/>
        hi,
    }
    #endregion
}
